#本次作业抄写课堂笔记，目前能力有限，无法做到用自己的话概述。因此抄写课堂笔记，加深印象
# 1、什么是TCP/IP协议
# TCP/IP不是单个协议，它是一个协议族。它涉及到五层协议中的传输层和数据链路层, 网络层
# 起到应用和硬件之间承上启下的作用。
# 2、TCP/IP的三次握手策略
#     2.1客户端向服务器发送带有SYN标识的数据包, 服务器确认客户端发送能力正常
#     2.2服务器向客户端返回带有SYN-ACK标识的数据包, 服务器确认了自己接受能力正常
#     2.3客户端向服务器返回带有ACK标识的数据包, 服务器确认了自己收发正常, 客户端接收正常
# 3、TCP/IP的四次挥手?
#     3.1客户端向服务端发送了一个FIN(FINISH)数据包, 目的是关闭客户端到服务端的连接通道
#     3.2服务端收到FIN后, 返回了一个ACK数据包, 目的是通知客户端: 服务端已经知道了客户端到服务端的连接通道已关闭
#     3.3服务端来关闭与客户端的连接, 发送FIN数据包至客户端, 目的是关闭服务端到客户端的连接通道
#     3.4客户端返回ACK数据包确认, 目的是通知服务端: 客户端已经知道了服务端到客户端的连接通道已关闭
# 4、什么是HTTPS?
# 在HTTP的基础上增加了SSL(Secure Socket Layer), 可以认证用户和服务器, 保证了传输的安全
# 5、HTTPS验证过程：
#     5.1客户端向服务端发送通信请求.
#     5.2服务端返回客户端证书和公钥.
#     5.3客户端通过CA中心验证证书的真实性.
#     5.4客户端完成了认证后, 使用公钥对发送的内容进行加密, 发送给服务端.
#     5.5服务端收到加密后的请求数据后, 使用私钥进行解密.
#     5.6服务器和客户端使用对称加密进行通信.
# 6、什么是SSLPinning?
# 在通过证书验证服务器的合法性上, 通过SSL Pinning验证了客户端的合法性. 有以下两种方式:
#     6.1证书锁定(也是最常用的一种)
#     app内置了指定域名的证书.
#     6.2公钥锁定
#     提取证书中的公钥并内置到APP中, 通过与服务器对比公钥值来验证连接的合法性
# 7、如何绕过SSLPining?
#     7.1HOOK所有https证书校验方法的模块, 常用的justtrustme
#     7.2反编译找到证书或者公钥的位置, 带上证书和公钥模拟请求.